Windows Server on EC2でDFSレプリケーションを構築してみた

Windows Server on EC2でDFSレプリケーションを構築してみた

Clock Icon2025.01.04

はじめに

Windows Server 2022でDFSレプリケーションを構築してみました。DFSレプリケーションは、複数のファイルサーバー間でファイルを同期する機能です。ファイルサーバーの冗長化や負荷分散を実現するために利用されます。
AWSではFSx for Windows File Serverを利用することで、それらを簡単に実現することができますが、セキュリティ上の理由や特定のシステム要件により、Windows Server on EC2でファイルサーバーを構築することが求められる場合もあります。

設定値

以下のような設定を元に手順を進めます。
各ファイルサーバーはADに参加している必要がありますので、事前にADを構築しておく必要があります。

設定 備考
ADドメイン miya.local ドメインの機能レベルはWindows Server 2016
ファイルサーバ1のホスト名 FS11
ファイルサーバ2のホスト名 FS12

構築手順

1. EC2の構築

Windows Server 2022をインストールしたEC2インスタンスを2台用意します。AMIは ami-09eb7f8fa1e947e23(Windows_Server-2022-Japanese-Full-Base-2024.11.13) を利用します。
また、ストレージ用にEBSボリュームを追加し、それぞれDドライブに設定します。

1.1 セキュリティグループの設定

ファイルサーバー間の通信のために、以下のセキュリティグループを設定します。

タイプ プロトコル ポート範囲 備考
SMB TCP 445
カスタムTCPルール TCP 135 RPC
カスタムTCPルール TCP 49152-65535 ランダムに割り当てられた非特権 TCP ポート

2. ファイルサーバーの構築

2.1 ファイルサーバーの役割の追加

各ファイルサーバーの[サーバーマネージャー]を開き、[役割と機能の追加]をクリックします。次の役割にチェックを入れてインストールします。

  • ファイルサーバー
  • DFS名前空間
  • DFSレプリケーション

スクリーンショット 2025-01-02 19.20.54

2.2 共有フォルダの準備

FS11とFS12にそれぞれフォルダを作成します。

FS11にはDドライブに D:¥shared¥development を作成します。

スクリーンショット 2025-01-02 20.37.23

FS12にはDドライブに D:¥replicated-development を作成します。

スクリーンショット 2025-01-02 20.42.37

FS11からFS12へ単方向でレプリケートするわけではないのですが、わかりやすくするために replicated-development という名前を付けました。

3. DFSの設定

3.1 名前空間の作成

まず、DFSの名前空間を作成します。DFSの名前空間は、複数のファイルサーバーを1つの論理的なファイルサーバーとして扱うための仕組みです。
FS11の[サーバーマネージャー]を開き、[ツール] - [DFS管理]を選択します。

[新しい名前空間]を選択します。

スクリーンショット 2025-01-02 19.27.12

名前空間をホストするサーバーを選択します。今回はFS11をホストサーバとします。

スクリーンショット 2025-01-02 20.38.09

次に名前空間の名前を入力します。今回は Public とします。これにより、クライアントから ¥¥miya.local¥Public という名前空間でアクセスできるようになります。

スクリーンショット 2025-01-02 20.43.26

名前空間の種類はデフォルトのままで進めます。

スクリーンショット 2025-01-02 20.43.42

内容を確認して[作成]をクリックします。

スクリーンショット 2025-01-02 20.43.50

スクリーンショット 2025-01-02 20.44.02

3.2 レプリケーショングループの作成

次に、レプリケーショングループを作成します。レプリケーショングループは、ファイルのレプリケーションを管理するための仕組みです。

[レプリケーション]から、[新しいレプリケーショングループ]を選択します。

スクリーンショット 2025-01-02 20.44.14

レプリケーショングループの種類は、[汎用レプリケーショングループ]を選択します。

スクリーンショット 2025-01-02 20.44.29

レプリケーショングループの名前を入力します。今回は development-group とします。

スクリーンショット 2025-01-02 20.47.00

レプリケーショングループのメンバーを追加します。[追加]をクリックし、FS11とFS12を追加します。

スクリーンショット 2025-01-02 20.47.28

スクリーンショット 2025-01-02 20.47.53

スクリーンショット 2025-01-02 20.48.57

トポロジの種類、レプリケーショングループのスケジュールおよび帯域幅の設定はデフォルトのままで進めます。

スクリーンショット 2025-01-02 20.49.04

スクリーンショット 2025-01-02 20.49.14

プライマリメンバーを選択します。今回はFS11を選択します。

スクリーンショット 2025-01-02 20.49.25

レプリケートするフォルダを選択します。今回はFS11の D:¥shared¥development を選択します。

スクリーンショット 2025-01-02 20.49.37

スクリーンショット 2025-01-02 20.49.55

スクリーンショット 2025-01-02 20.50.04

他のメンバーにおけるローカルパスを選択します。今回はFS12の D:¥replicated-development を選択します。

スクリーンショット 2025-01-02 20.50.12

スクリーンショット 2025-01-02 20.50.39

スクリーンショット 2025-01-02 20.50.47

内容を確認して[作成]をクリックします。

スクリーンショット 2025-01-02 20.50.59

スクリーンショット 2025-01-02 20.51.11

3.3 名前空間での共有と公開

最後に、名前空間で共有フォルダを公開します。

[レプリケートフォルダー]から、[名前空間での共有と公開]を選択します。

スクリーンショット 2025-01-02 20.51.34

公開方法は、[レプリケートフォルダーを名前空間で共有および公開する]を選択します。

スクリーンショット 2025-01-02 20.52.11

先ほど設定した内容が表示されるので、内容を確認して[次へ]をクリックします。

スクリーンショット 2025-01-02 20.52.21

名前空間のパスは、親フォルダーに ¥¥miya.local¥Public を指定します。

スクリーンショット 2025-01-02 20.52.37

内容を確認して[共有]をクリックします。

スクリーンショット 2025-01-02 20.52.51

スクリーンショット 2025-01-02 20.53.02

4. 確認

ファイルを1つのファイルサーバーに配置し、もう1つのファイルサーバーにファイルが同期されていることを確認します。

スクリーンショット 2025-01-02 20.57.20

スクリーンショット 2025-01-02 20.57.45

おわりに

思っていたよりもサクッと構築することができました。
DFSレプリケーションを利用することで、ファイルサーバーの冗長化や負荷分散を実現できます。Windows Server on EC2でDFSレプリケーションを構築する際は、上記の手順を参考にしてください。

とは言え、EC2の運用管理コストが発生してしまうので、可能であればFSx for Windows File Serverを利用することをお勧めいたします。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.